var game = new Phaser.Game(800, 600, Phaser.AUTO, '', { preload: preload, create: create, update: update }); 
var score = 0; 
var scoreText;

function preload() { 

game.load.image('sky', 'assets/sky.png'); 
game.load.image('ground', 'assets/platform.png'); 
game.load.image('star', 'assets/star.png'); 
game.load.spritesheet('dude', 'assets/dude.png', 32, 48); 

} 

function create() { 

// A simple background for our game 
game.add.sprite(0, 0, 'sky'); 
// The platforms group contains the ground and the 2 ledges we can jump on 
platforms = game.add.group(); 
// Here we create the ground. 
var ground = platforms.create(0, game.world.height - 64, 'ground'); 
// Scale it to fit the width of the game (the original sprite is 400x32 in size)
ground.scale.setTo(2, 2); 
// This stops it from falling away when you jump on it 
ground.body.immovable = true; 
// Now let's create two ledges 
var ledge = platforms.create(400, 400, 'ground'); 
ledge.body.immovable = true;
ledge = platforms.create(-150, 250, 'ground'); 
ledge.body.immovable = true;



// The player and its settings 
player = game.add.sprite(32, game.world.height - 150, 'dude'); 
// Player physics properties. Give the little guy a slight bounce. 
player.body.bounce.y = 0.2; player.body.gravity.y = 6; player.body.collideWorldBounds = true; 
// Our two animations, walking left and right. 
player.animations.add('left', [0, 1, 2, 3], 10, true); player.animations.add('right', [5, 6, 7, 8], 10, true);

player.body.gravity.y = 6;

stars = game.add.group(); 
// Here we'll create 12 of them evenly spaced apart 
for (var i = 0; i < 100; i++) { 
// Create a star inside of the 'stars' group 
var star = stars.create(i * 70, 0, 'star'); 
// Let gravity do its thing 
star.body.gravity.y = 6; 
// This just gives each star a slightly random bounce value 
star.body.bounce.y = 0.7 + Math.random() * 0.2; 
}

cursors = game.input.keyboard.createCursorKeys();

scoreText = game.add.text(16, 16, 'score: 0', { fontSize: '32px', fill: '#000' });

} 

function update() {

// Collide the player and the stars with the platforms 
game.physics.collide(player, platforms);

game.physics.collide(stars, platforms);

// Reset the players velocity (movement) 
player.body.velocity.x = 0; 
if (cursors.left.isDown) { 
// Move to the left 
player.body.velocity.x = -150; 
player.animations.play('left');

}
else if (cursors.right.isDown) { 
// Move to the right 
player.body.velocity.x = 150; 
player.animations.play('right');
} 

else { 
// Stand still 
player.animations.stop(); 
player.frame = 4; }
// Allow the player to jump if they are touching the ground. 
if (cursors.up.isDown && player.body.touching.down) { 
player.body.velocity.y = -350; 
}

game.physics.overlap(player, stars, collectStar, null, this);
}

function collectStar (player, star) { 
// Removes the star from the screen 
star.kill(); 
// Add and update the score 
score += 10; 
scoreText.content = 'Score: ' + score;
}